<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <script>
        // 预解析：浏览器在执行代码执行，会先解析代码
        // 函数提升：浏览器在预解析阶段，会找到所有的函数声明式，将函数提升到代码头部

        foo();

        // 函数声明式
        function foo() {
            console.log("1");
        }

        foo();


        // 函数表达式(ES5)
        const bar = function () {
            console.log("2");
        }
        bar();

        // 函数表达式(ES6)：箭头函数
        const hello = () => {
            console.log("3");
        }
        hello();

        foo();
        bar();




        function outer() {

            function inner() {

            }


            inner();

        }


        outer();





        const foo = a => "hello";
        




    </script>
</body>

</html>